CMAKE_MINIMUM_REQUIRED(VERSION 3.18)
PROJECT(UT2004)

include("../configure.cmake")

SET(
    D3D9DRV_SRC

    Src/D3D9Drv.h
    Src/D3D9RenderDevice.h
    Src/D3D9RenderInterface.h
    Src/D3D9RenderState.h
    Src/D3D9Resource.h
    Src/xD3D9Helper.h

    src/D3D9Drv.cpp
    src/D3D9MaterialState.cpp
    src/D3D9RenderDevice.cpp
    src/D3D9RenderInterface.cpp
    src/D3D9RenderState.cpp
    src/D3D9Resource.cpp
    src/xD3D9Helper.cpp
    src/xD3D9RenderInterface.cpp
)

if (WIN32)
    add_library(D3D9Drv ${D3D9DRV_SRC})
    set_target_properties(D3D9Drv PROPERTIES
        FOLDER D3D9Drv
    )

    target_include_directories(D3D9Drv PRIVATE $ENV{DXSDK_DIR}/Include)
    if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "4")
        target_link_directories(D3D9Drv PRIVATE $ENV{DXSDK_DIR}/Lib/x86)
    else()
        target_link_directories(D3D9Drv PRIVATE $ENV{DXSDK_DIR}/Lib/x64)
    endif()

    target_link_libraries(D3D9Drv CoreLib EngineLib)
    target_link_libraries(D3D9Drv DxGuid.lib d3d9.lib d3dx9.lib)
    unreal_package_configure(D3D9Drv D3D9Drv)
endif()
